7bb9c8774d5d559b8bf632388ddbcc891e7ad1f7,src/main/java/com/mebigfatguy/fbcontrib/utils/SignatureUtils.java,SignatureUtils,getParameterSignatures,#String#,233
Before Change
List<String> parmSignatures = new ArrayList<>();
int sigStart = start;
for (int i = start; i < limit; i++) {
char c = methodSignature.charAt(i);
String parmSignature;
if (c != Values.SIG_ARRAY_PREFIX.charAt(0)) {
if (c == Values.SIG_QUALIFIED_CLASS_PREFIX_CHAR) {
int semiPos = methodSignature.indexOf(Values.SIG_QUALIFIED_CLASS_SUFFIX_CHAR, i + 1);
parmSignature = methodSignature.substring(sigStart, semiPos + 1);
parmSignatures.add(parmSignature);
i = semiPos;
} else if ((c == '!') || (c == '+')) {
// eclipse wonky classes
sigStart++;
} else {
After Change
* the signature of the method to parse
* @return a list of parameter signatures
*/
public static List<String> getParameterSignatures(String methodSignature) {
int start = methodSignature.indexOf('(') + 1;
int limit = methodSignature.lastIndexOf(')');
if ((limit - start) == 0) {
return Collections.emptyList();
}
List<String> parmSignatures = new ArrayList<>();
int sigStart = start;
for (int i = start; i < limit; i++) {
if (!methodSignature.startsWith(Values.SIG_ARRAY_PREFIX, i)) {
if (methodSignature.startsWith(Values.SIG_QUALIFIED_CLASS_PREFIX, i)) {
int semiPos = methodSignature.indexOf(Values.SIG_QUALIFIED_CLASS_SUFFIX_CHAR, i + 1);
parmSignatures.add(methodSignature.substring(sigStart, semiPos + 1));
i = semiPos;
} else if (isWonkyEclipseSignature(methodSignature, i)) {
sigStart++;
} else {
parmSignatures.add(methodSignature.substring(sigStart, i + 1));